const defaultAvatarUrl = 'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0';

Page({
  data: {
    motto: 'Hello World',
    userInfo: {
      avatarUrl: defaultAvatarUrl,
      nickName: '',
    },
    hasUserInfo: false,
    userId: '', // 存储分配的 userId
    canIUseGetUserProfile: wx.canIUse('getUserProfile'),
    canIUseNicknameComp: wx.canIUse('input.type.nickname'),
  },

  // 页面加载时检查是否已有 userId
  onLoad() {
    const userId = wx.getStorageSync('userId');
    if (userId) {
      this.setData({ userId });
      console.log('已登录，userId:', userId);
    }
  },




  bindViewTap() {
    // wx.navigateTo({
    //   url: '../chatLikes/chatLikes'
    // });
    wx.switchTab({
        url: '/pages/Home/Home'
      });
  
    const { nickName } = this.data.userInfo; // 获取 userInfo 中的 nickName
  
    wx.request({
      url: 'http://127.0.0.1:3000/login', // 替换为你的后端接口地址
      method: 'POST',
      data: { wechatname: nickName }, // 将用户昵称作为参数
      success: (loginRes) => {
        console.log('后端返回数据:', loginRes.data);
        const { userId } = loginRes.data;
  
        if (userId) {
          // 保存 userId 到本地存储并更新页面数据
          wx.setStorageSync('userId', userId);
          this.setData({ userId });
          console.log('登录成功，userId:', userId);
        }
      },
      fail: (err) => {
        console.error('请求登录接口失败:', err);
      }
    });
  },
  

  // 处理头像选择
  onChooseAvatar(e) {
    const { avatarUrl } = e.detail;
    const { nickName } = this.data.userInfo;
    this.setData({
      "userInfo.avatarUrl": avatarUrl,
      hasUserInfo: nickName && avatarUrl && avatarUrl !== defaultAvatarUrl,
    });
  },

  // 处理昵称输入
  onInputChange(e) {
    const nickName = e.detail.value;
    const { avatarUrl } = this.data.userInfo;
    this.setData({
      "userInfo.nickName": nickName,
      hasUserInfo: nickName && avatarUrl && avatarUrl !== defaultAvatarUrl,
    });
  },

  // 使用 getUserProfile 获取用户信息并分配 userId
  getUserProfile(e) {
    wx.getUserProfile({
      desc: '展示用户信息', // 声明用途
      success: (res) => {
        console.log('用户信息:', res);
        const { userInfo } = res;

        // 将用户信息更新到页面数据中
        this.setData({
          userInfo,
          hasUserInfo: true
        });

        // 向后端请求分配 userId
        // wx.request({
        //   url: 'http://127.0.0.1:3000/login', // 替换为你的后端接口地址
        //   method: 'POST',
        //   data: { name: userInfo.nickName }, // 将用户昵称作为参数
        //   success: (loginRes) => {
        //     console.log('后端返回数据:', loginRes.data);
        //     const { userId } = loginRes.data;

        //     if (userId) {
        //       // 保存 userId 到本地存储并更新页面数据
        //       wx.setStorageSync('userId', userId);
        //       this.setData({ userId });
        //       console.log('登录成功，userId:', userId);
        //     }
        //   },
        //   fail: (err) => {
        //     console.error('请求登录接口失败:', err);
        //   }
        // });
      },
      fail: (err) => {
        console.error('用户拒绝授权:', err);
      }
    });
  }
});
